package com.elric.mall.common.annotation;


import java.lang.annotation.*;

/**
 * 实现功能：excel导出自定义注解
 *
 * @author 作者[Yuxuan.he]
 * @version 1.0.00  2021-09-16 10:44
 */
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ExportExcelAnnotation {

    /**
     * 列索引
     * @return
     */
     int columnIndex() default 0;

    /**
     * 列名(字段名称)
     * @return
     */
     String columnName() default "";

    /**
     * 导出时是否进行字段转换 例如 性别用int存储，导出时可能转换为男，女
     * 若是sign为true,则需要在pojo中加入一个方法 get字段名Convert()
     * 例如，字段sex ，需要加入 public String getSexConvert() 返回值为string
     * 若是columnConvert为false,则不必管
     * @return 导出是否字段转换
     */
    boolean columnConvert() default false;

    /**
     * 金额去0
     */
    boolean stripTrailingZeros() default false;

    /**
     * 时间格式化
     * @return
     */
    String dateFormat() default "";

    /**
     * 数字格式化
     * @return
     */
    String numberFormat() default "";

    /**
     * 导出时在excel中每个列的宽 单位为字符，一个汉字=2个字符
     * 限制1-255
     * @return 列宽
     */
    int columnWidth() default 15;

    /**
     * 是否合并单元格
     * @return
     */
    boolean region() default false;

    int startNum() default 0;
    int endNum() default 0;

}
